package com.ruoyi.novel.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.novel.domain.Novel;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 * 小说漫画Service接口
 *
 * @author 张三
 * @date 2025-04-18
 */
public interface INovelService extends IService<Novel>
{
    /**
     * 查询小说漫画
     *
     * @param id 小说漫画主键
     * @return 小说漫画
     */
    public Novel selectNovelById(Integer id);

    /**
     * 查询小说漫画列表
     *
     * @param novel 小说漫画
     * @return 小说漫画集合
     */
    public List<Novel> selectNovelList(Novel novel);

    /**
     * 新增小说漫画
     *
     * @param novel 小说漫画
     * @return 结果
     */
    public int insertNovel(Novel novel);

    /**
     * 修改小说漫画
     *
     * @param novel 小说漫画
     * @return 结果
     */
    public int updateNovel(Novel novel);

    /**
     * 批量删除小说漫画
     *
     * @param ids 需要删除的小说漫画主键集合
     * @return 结果
     */
    public int deleteNovelByIds(Integer[] ids);

    /**
     * 删除小说漫画信息
     *
     * @param id 小说漫画主键
     * @return 结果
     */
    public int deleteNovelById(Integer id);

    IPage<Novel> getNovelList(IPage<Novel> page, QueryWrapper<Novel> queryWrapper);

    IPage<Novel> getUserNovelList(IPage<Novel> page, @Param("ew") QueryWrapper<Novel> queryWrapper);

    IPage<Novel> getOrderNovelList(IPage<Novel> page, @Param("ew") QueryWrapper<Novel> queryWrapper);
}
